/**
 * 
 */
package com.rpg.base.flyweight;

/**
 * @author Donald
 *
 */
public abstract class InteractiveObjectNPCData {
	float		maxlife;		
	float		life;
	float		armorClass;
	/**
	 * Gets the armorClass 
	 * @return {@link float}
	 */
	public float getArmorClass() {
		return armorClass;
	}
	/**
	 * Sets the armorClass
	 * @param armorClass the armorClass to set
	 */
	public void setArmorClass(float armorClass) {
		this.armorClass = armorClass;
	}
	int		xpvalue;		
	float		maxmana;		
	float		mana;			
	long	reachedtime;	
	long		reachedtarget;	//Is target in REACHZONE ?
	int		weapon;			//Linked Weapon (r-hand)
	long		detect;			
	long		movemode;		
	float		armor_class;
	float		absorb;			
	float		damages;
	float		tohit;
	float		aimtime;
	float		critical;
	float		reach;
	float		backstab_skill;

	long	behavior;
	float			behavior_param;
	long			tactics;		 // 0=none ; 1=side ; 2=side+back
	long		cut;

	float				moveproblem;
	long		weapontype;
	long		weaponinhand;
	long		fightdecision;
	char[]		weaponname = new char[256];

	float		look_around_inc;
	long collid_time;
	long		collid_state;
	float		speakpitch;
	float		lastmouth;
	long		ltemp;

	//IO_BEHAVIOR_DATA	stacked[MAX_STACKED_BEHAVIOR];
	float		poisonned;
	char	resist_poison;
	char	resist_magic;
	char	resist_fire;
	char	padd;

	short		strike_time;
	short		walk_start_time;
	long		aiming_start;
	long		npcflags;
	//IO_PATHFIND		pathfind;
	//EERIE_EXTRA_ROTATE *	ex_rotate;
	//D3DCOLOR	blood_color;

	short SPLAT_DAMAGES;
	short SPLAT_TOT_NB;
	//EERIE_3D last_splat_pos;
	float vvpos;

	float climb_count;
	float stare_factor;
	float fDetect;
	short				cuts;
	short				unused;
}
